package org.example.exampreparationtreasure.enums;

import com.baomidou.mybatisplus.annotation.EnumValue;

public enum DifficultyLevel {
    /**
     * 简单难度
     */
    EASY("简单"),
    /**
     * 中等难度
     */
    MEDIUM("中等"),
    /**
     * 困难难度
     */
    HARD("困难");

    @EnumValue
    private final String description;

    /**
     * 构造方法
     * @param description 难度的描述信息
     */
    DifficultyLevel(String description) {
        this.description = description;
    }

    /**
     * 获取难度的描述信息
     * @return 难度描述
     */
    public String getDescription() {
        return description;
    }

    /**
     * 根据描述信息获取对应的枚举值
     * @param description 难度描述
     * @return 对应的枚举值，如果没有匹配的则返回null
     */
    public static DifficultyLevel fromDescription(String description) {
        for (DifficultyLevel level : DifficultyLevel.values()) {
            if (level.getDescription().equals(description)) {
                return level;
            }
        }
        return null;
    }
}
